package com.qingsong.dto;

import cn.hutool.json.JSONUtil;
import lombok.Data;

import java.io.Serializable;

@Data
public class RequestLogDTO implements Serializable {
    /**请求地址*/  
    private String url;  
    /**请求时间*/  
    private String requestTime;  
    /**请求方式*/  
    private String requestMethod;  
    /**来源地址*/  
    private String remoteAddress;  
    /**类全名称*/  
    private String className;  
    /**方法名称*/  
    private String methodName;  
    /**方法形参*/  
    private String parameters;  
    /**响应数据*/  
    private Object responseData;  
    /**请求耗时*/  
    private String spendTime;

    @Override
    public String toString() {
        return String.format("\n" +
                        "请求地址: %s %s\n" +
                        "控制方法: %s.%s(): 耗时%s\n" +
                        "请求参数: %s\n" +
                        "响应数据: %s\n",
                requestMethod, url, className, methodName, spendTime,
                JSONUtil.toJsonPrettyStr(parameters),
                JSONUtil.toJsonPrettyStr(responseData));

    }
}